7150 # Initial process execs /init.
7151 
7152 #include "syscall.h"
7153 #include "traps.h"
7154 
7155 # exec(init, argv)
7156 .globl start
7157 start:
7158   pushl $argv
7159   pushl $init
7160   pushl $0  // where caller pc would be
7161   movl $SYS_exec, %eax
7162   int $T_SYSCALL
7163 
7164 # for(;;) exit();
7165 exit:
7166   movl $SYS_exit, %eax
7167   int $T_SYSCALL
7168   jmp exit
7169 
7170 # char init[] = "/init\0";
7171 init:
7172   .string "/init\0"
7173 
7174 # char *argv[] = { init, 0 };
7175 .p2align 2
7176 argv:
7177   .long init
7178   .long 0
7179 
7180 
7181 
7182 
7183 
7184 
7185 
7186 
7187 
7188 
7189 
7190 
7191 
7192 
7193 
7194 
7195 
7196 
7197 
7198 
7199 
